The present invention concerns an apparatus, method and system for remotely and wirelessly accessing and/or controlling vehicle-based controller area network (CAN) based node arrangements, including accessing and/or controlling data available in a memory of a vehicle-based electronic control unit (ECU), obtaining a memory dump of such a memory, remotely controlling a selected CAN node arrangement, such as, for example, a vehicle ECU, and monitoring in essentially real-time internal conditions and states of a selected CAN node arrangement, such as, for example, a vehicle ECU, during vehicle operation.
While remote access may be obtainable with respect to certain defined xe2x80x9cexternalxe2x80x9d signals communicated from a CAN node arrangement and/or vehicle ECU on a controller area network (CAN) bus, it is not believed that this provides any of the following capabilities: remotely accessing and/or controlling internal states of a CAN node arrangement and/or vehicle ECU (that is, xe2x80x9cinternalxe2x80x9d signals not otherwise communicated on the CAN bus, as opposed to xe2x80x9cexternalxe2x80x9d signals normally output for communication on a CAN bus); obtaining a memory dump of such a memory, and controlling a CAN node arrangement and/or vehicle ECU and/or vehicle subsystem from outside the vehicle while the vehicle is operating in the field.
An object of an exemplary method according to the present invention is directed to providing a method for remotely accessing at least one CAN node arrangement of a CAN bus arrangement associated with the vehicle during vehicle operation, the CAN bus arrangement being associated with a CAN gateway arrangement for coupling to an external network, the method including the steps of: communicating an initialization control message from the CAN gateway arrangement to the at least one CAN node arrangement using the CAN bus arrangement, the initialization control message including a CAN node arrangement identifier code; comparing the CAN node arrangement identifier code with a unique CAN node arrangement identifier code stored at each of the at least one CAN node arrangement for determining a selected CAN node arrangement based on the CAN node arrangement identifier code and the unique CAN node arrangement identifier code; processing the initialization control message using the selected CAN node arrangement; communicating a data addressing message from the CAN gateway arrangement to the selected CAN node arrangement, the data addressing message including at least one memory address of the data to be at least one of accessed, controlled and retrieved; communicating at least one data reply message from the selected CAN node arrangement to the CAN gateway arrangement, wherein the at least one data reply message includes a data payload; incorporating at least the data payload of the at least one data reply message using a communication protocol of the external network for communication of the data payload to the remote accessing arrangement; and communicating an end control message from the CAN gateway arrangement to the selected CAN node arrangement using the CAN bus arrangement.
Another object of an exemplary method according to the present invention is directed to providing the above method, further including the step of establishing a wireless communication link between a remote accessing and control arrangement and the CAN gateway arrangement.
Still another object of an exemplary method according to the present invention is directed to providing the above method, in which the step of establishing the wireless communication is performed using a data call based on a point-to-point protocol.
Yet another object of an exemplary method according to the present invention is directed to providing the above method, in which the remote accessing and control arrangement includes a computer arrangement.
Still another object of an exemplary method according to the present invention is directed to providing the above method, in which the remote accessing and control arrangement includes a wireless communication arrangement.
Yet another object of an exemplary method according to the present invention is directed to providing the above method, in which the remote accessing and control arrangement includes a computer arrangement and a wireless communication arrangement.
Still another object of an exemplary method according to the present invention is directed to providing the above method, in which the external network includes the Internet.
Yet another object of an exemplary method according to the present invention is directed to providing the above method, in which: the communication protocol includes at least one of a transmission control protocol and an Internet protocol; and the remote accessing and control arrangement and the CAN gateway node arrangement are identified by associated addresses based on the Internet protocol.
Still another object of an exemplary method according to the present invention is directed to providing the above method, in which the CAN gateway arrangement includes: a processor arrangement for communicating with the CAN node arrangement using the CAN bus arrangement; and a wireless communication arrangement for communications with a remote accessing and control arrangement.
Yet another object of an exemplary method according to the present invention is directed to providing the above method, in which the CAN bus arrangement includes: at least two CAN buses; and at least one CAN/CAN gateway arrangement for coupling the at least two CAN buses.
Still another object of an exemplary method according to the present invention is directed to providing the above method, in which the at least one CAN node arrangement includes at least one of an electronic control unit, a sensor arrangement and a control module for use in the vehicle.
Yet another object of an exemplary method according to the present invention is directed to providing the above method, in which the initialization control message includes a data defining payload for defining the data to be one of accessed, controlled and retrieved from the selected CAN node arrangement.
Still another object of an exemplary method according to the present invention is directed to providing the above method, in which: the remote accessing and control arrangement communicates control information using a transmission control protocol; and the control information corresponds to at least the initialization control message, the data addressing message, the data reply message and the end control message for causing the CAN gateway arrangement to communicate at least the initialization control message, the data addressing message, the data reply message and the end control message on the CAN bus arrangement.
Yet another object of an exemplary method according to the present invention is directed to providing the above method, in which the CAN node arrangement identifier code for determining the selected CAN node arrangement is determined by a program of the remote accessing and control arrangement.
Still another object of an exemplary method according to the present invention is directed to providing the above method, in which the CAN gateway arrangement stores a set of CAN gateway message identifiers for providing CAN gateway communications on the CAN bus arrangement.
Yet another object of an exemplary method according to the present invention is directed to providing the above method, in which the CAN gateway arrangement stores at least one of a message time period and a debounce time period.
Still another object of an exemplary method according to the present invention is directed to providing the above method, in which the CAN gateway arrangement stores unique CAN node arrangement identifier codes for each of the at least one CAN node arrangement.
Yet another object of an exemplary method according to the present invention is directed to providing the above method, in which: the unique CAN node arrangement identifier codes differ from corresponding addresses used by a program of a remote accessing and control arrangement; and the CAN gateway arrangement includes a lookup table for matching each of the unique CAN node arrangement identifier codes and the corresponding addresses from the remote accessing and control arrangement.
Still another object of an exemplary method according to the present invention is directed to providing the above method, in which the data addressing message includes information for at least one of accessing, controlling and retrieving at least one of a single word, two words and a plurality of words within an address range.
Yet another object of an exemplary method according to the present invention is directed to providing the above method, in which the plurality of words within the address range are communicated in a set of multiplexed data reply messages.
Still another object of an exemplary method according to the present invention is directed to providing the above method, in which at least one of a selected electronic control unit and the selected CAN node arrangement replies to the data addressing message with the at least one data reply message.
Yet another object of an exemplary method according to the present invention is directed to providing the above method, in which: data reply message identifiers differ from initialization control message identifiers and data addressing message identifiers; and the data reply messages are communicated periodically by one of using a same data reply message identifier for a multiplexed payload and using a changing data reply message identifier.
Still another object of an exemplary method according to the present invention is directed to providing the above method, in which: at least one of a selected electronic control unit and the selected CAN node arrangement is monitored essentially in real-time by periodically retrieving at least one word; and payload information of each of the data reply messages is transmitted by the CAN gateway arrangement without delay on the external network.
Yet another object of an exemplary method according to the present invention is directed to providing the above method, in which the payload information includes internal signal information from a memory of the selected electronic control unit.
Still another object of an exemplary method according to the present invention is directed to providing the above method, in which at least one of multiple word retrieval and a memory dump is provided by buffering payload information of the data reply messages and concatenated into a transmission communication protocol information stream.
Yet another object of an exemplary method according to the present invention is directed to providing the above method, in which the data addressing message and a control message are included in one message for communication on the CAN bus arrangement.
Another object of an exemplary system according to the present invention is directed to providing a system for remotely accessing at least one CAN node arrangement during vehicle operation, the system including: a CAN bus arrangement for use in a vehicle, the at least one CAN bus including the at least one CAN node arrangement; a wireless communication arrangement for coupling with an external network; a CAN gateway arrangement for coupling with the remote network arrangement, the CAN gateway arrangement being coupled to the wireless communication arrangement; another wireless communication arrangement; a remote accessing and control arrangement for at least one of remotely accessing and remotely controlling at least one of the at least one CAN node arrangement through the CAN bus arrangement, the remote accessing and control arrangement being coupled to the another wireless arrangement and being configured for communicating between the another wireless communication arrangement and the wireless communication arrangement of the CAN gateway arrangement.
Still another object of an exemplary system according to the present invention is directed to providing the above system, in which the CAN gateway arrangement includes a processor for performing the following steps: communicating an initialization control message from the CAN gateway arrangement to the at least one CAN node arrangement using the CAN bus arrangement, the initialization control message including a CAN node arrangement identifier code; comparing the CAN node arrangement identifier code with a unique CAN node arrangement identifier code stored at each of the at least one CAN node arrangement for determining a selected CAN node arrangement based on the CAN node arrangement identifier code and the unique CAN node arrangement identifier code; processing the initialization control message using the selected CAN node arrangement; communicating a data addressing message from the CAN gateway arrangement to the selected CAN node arrangement, the data addressing message including at least one memory address of the data to be at least one of accessed, controlled and retrieved; communicating at least one data reply message from the selected CAN node arrangement to the CAN gateway arrangement, wherein the at least one data reply message includes a data payload; incorporating at least the data payload of the at least one data reply message using a communication protocol of the external network for communication of the data payload to the remote accessing arrangement; and communicating an end control message from the CAN gateway arrangement to the selected CAN node arrangement using the CAN bus arrangement.
Yet another object of an exemplary system according to the present invention is directed to providing the above system, in which the data addressing message and a control message are included in one message for communication on the CAN bus arrangement.
Another object of an exemplary CAN gateway arrangement according to the present invention is directed to providing a CAN gateway arrangement for accessing at least one CAN node arrangement of a CAN bus arrangement associated with the vehicle during vehicle operation, the CAN bus arrangement being linkable to the CAN gateway arrangement for coupling to an external network, the CAN gateway arrangement including a processor arrangement for performing the following steps: communicating an initialization control message from the CAN gateway arrangement to the at least one CAN node arrangement using the CAN bus arrangement, the initialization control message including a CAN node arrangement identifier code; comparing the CAN node arrangement identifier code with a unique CAN node arrangement identifier code stored at each of the at least one CAN node arrangement for determining a selected CAN node arrangement based on the CAN node arrangement identifier code and the unique CAN node arrangement identifier code; processing the initialization control message using the selected CAN node arrangement; communicating a data addressing message from the CAN gateway arrangement to the selected CAN node arrangement, the data addressing message including at least one memory address of the data to be at least one of accessed, controlled and retrieved; communicating at least one data reply message from the selected CAN node arrangement to the CAN gateway arrangement, wherein the at least one data reply message includes a data payload; incorporating at least the data payload of the at least one data reply message using a communication protocol of the external network for communication of the data payload to the remote accessing arrangement; and communicating an end control message from the CAN gateway arrangement to the selected CAN node arrangement using the CAN bus arrangement.
Still another object of an exemplary CAN gateway arrangement according to the present invention is directed to providing the above arrangement, in which the CAN gateway arrangement further includes a wireless communications arrangement for communicating with the external network.
Yet another object of an exemplary CAN gateway arrangement according to the present invention is directed to providing the above arrangement, in which the CAN gateway arrangement further includes the wireless communications arrangement includes at least one of a modem and a cellular phone.
Still another object of an exemplary CAN gateway arrangement according to the present invention is directed to providing the above arrangement, in which the data addressing message and a control message are included in one message for communication on the CAN bus arrangement.